/*
 * @Descripttion: 指令注册入口
 * @version: 1.0.0
 * @Author: shuaishuai.han
 * @Date: 2021-12-29 10:03:24
 */
import Vue from 'vue';

const requireComponent = require.context(
  // 其组件目录的相对路径
  './js',
  // 是否查询其子目录
  false,
  // 匹配基础组件文件名的正则表达式
  /\.(js)$/
);

requireComponent.keys().forEach((fileName) => {
  // 获取组件配置
  const directivesConfig = requireComponent(fileName);

  // 获取组件的 PascalCase 命名
  const directivesName = fileName
    .split('/')
    .pop()
    .replace(/\.\w+$/, '');

  // 全局注册指令
  Vue.directive(directivesName, directivesConfig.default || directivesConfig);
});
